// CSE571 - signal-handler.cpp
// Authors: Guangle Fan
// This class handles sending messages after SIGINT is triggered

#ifndef SIG_TIMER_HANDLER_H
#define SIG_TIMER_HANDLER_H

#include <iostream>
#include "stdio.h"
#include <utility>
#include <ace/Reactor.h>
#include <ace/Time_Value.h>

#include "dealer.h"
#include "signal-handler.h"
#include "game.h"
#include "game-manager.h"
#include "player-game.h"
#include "player.h"
#include "globals.h"
#include "io-manager.h"
#include "async-io-svc-handler.h"

class PlayerSigTimerHandler : public AsyncIOSvcHandler {
 public:
  PlayerSigTimerHandler (ACE_Reactor *reactor);
  int handle_timeout (const ACE_Time_Value &, const void*); 
 private:
  bool triggered;
};

class DealerSigTimerHandler : public AsyncIOSvcHandler {
 public:
  DealerSigTimerHandler (ACE_Reactor *reactor); 
  int handle_timeout (const ACE_Time_Value &, const void*); 
 private:
  bool triggered;
};

#endif
